﻿$(document).ready(function () {
});

$(function () {

    ////////////////////////////////////////////////////////////////////////////
    //영역 버튼 히든필드 선언
    ////////////////////////////////////////////////////////////////////////////
    // 영역
    var $docs = $(".docs"); //문서들을 싸고 있는 UL
    var $doc = $(".doc"); //문서 Li
    var $folders = $(".folders"); //폴더들을 싸고 있는 UL
    var $folder = $(".folder"); //각각의 폴더 Li
    var $folderImg = $(".colTypeImg"); //아이템별 타입 이미지
    var $PerUserTitle = $(".crrPermissionTitle"); //권한 사용자 표시 영역 타이틀
    var $PerUserLayer = $(".crrPermissionUsers"); //권한 사용자 표시 영역
    // 버튼
    var $liNavBtn = $(".liNavBtn"); //네비게이션 버튼
    //var $liFolderAdd = $(".liFolderAdd"); //본문영역 폴더추가 이미지버튼
    //var $btnFolderAdd = $(".btnFolderAdd"); //폴더추가버튼
    var $liViewIcon = $(".liViewIcon"); //아이콘 보기 버튼
    var $liViewDetail = $(".liViewDetail"); //자세히 보기 버튼
    var $liFolderDelete = $(".liFolderDelete"); //휴지통
    var $btnSave = $(".btnSave"); //적용버튼
    var $btnDelete = $(".btnDelete"); //삭제버튼
    var $btnViewIcon = $(".btnViewIcon"); //아이콘 보기 버튼
    var $btnViewDetail = $(".btnViewDetail"); //자세히 보기 버튼
    // 히든필드
    var $hdEventType = $(".hdEventType"); //이벤트 타입
    var $hdFromSiteUrl = $(".hdFromSiteUrl"); //문서를 가져올 사이트 주소
    var $hdFromWebName = $(".hdFromWebName"); //문서를 가져올 웹 이름
    var $hdFromListUrl = $(".hdFromListUrl"); //문서를 가져올 리스트 주소
    var $hdFromDocID = $(".hdFromDocID"); //가져올 문서 아이디
    var $hdToSiteUrl = $(".hdToSiteUrl"); //문서를 옮길 사이트 주소
    var $hdToWebName = $(".hdToWebName"); //문서를 옮길 웹 이름
    var $hdToListUrl = $(".hdToListUrl"); //문서를 옮길 리스트 주소
    var $hdToFolderName = $(".hdToFolderName"); //문서를 옮길 폴더명
    // 드롭다운
    var drops;

    ////////////////////////////////////////////////////////////////////////////
    //폴더 권한사용자 타이틀 클릭 시 상세정보 레이어 표시
    ////////////////////////////////////////////////////////////////////////////
    $PerUserTitle.button();
    $PerUserTitle.click(function () {
        //alert($PerUserLayer.html());
        //////////////////////////////////////////////////////////////////////////////////////////////$PerUserLayer.css("height", "100px");
    });

    ////////////////////////////////////////////////////////////////////////////
    //문서 우클릭 시 상세정보 레이어 표시
    ////////////////////////////////////////////////////////////////////////////
    $doc.bind("contextmenu", function (event) {
        $("li.itemLayerd").removeClass('itemLayerd');
        $(this).addClass('itemLayerd');

        event.preventDefault();
        $("div.dvInfoLayer").hide();
        var $vLayer = $(this).children("div.dvItemBg").children("div.dvInfoLayer");
        $vLayer.css("display", "block");          
    });

    $folder.bind("contextmenu", function (event) {
        $("li.itemLayerd").removeClass('itemLayerd');
        $(this).addClass('itemLayerd');

        event.preventDefault();
        $("div.dvInfoLayer").hide();
        var $vLayer = $(this).children("div.dvItemBg").children("div.dvInfoLayer");
        $vLayer.css("display", "block");          
    });

    //상세정보 레이어 감춤
    $(document).bind("click", function (event) {
        $("div.dvInfoLayer").hide();
        $("li.itemLayerd").removeClass('itemLayerd');
        //////////////////////////////////////////////////////////////////////////////////////////////$PerUserLayer.css("height", "0px");
    });

    ////////////////////////////////////////////////////////////////////////////
    //폴더에 아이템을 추가
    ////////////////////////////////////////////////////////////////////////////

    function addToFolder($item, $fol) {
        var strFolderInfo = $fol.children("div.dvItemBg").children("div.dvItemInfo").html();
        var arrFolderInfo = strFolderInfo.split("^");
        var strDocInfo = $item.children("div.dvItemBg").children("div.dvItemInfo").html();
        var arrDocInfo = strDocInfo.split("^");
        //////////////////////////////////////히든필드에 값을 셋팅한다.
        $hdEventType.val("1"); //문서를 가져올 사이트 주소
        $hdFromSiteUrl.val(arrDocInfo[0]); //문서를 가져올 사이트 주소
        $hdFromWebName.val(arrDocInfo[1]); //문서를 가져올 웹 주소
        $hdFromListUrl.val(arrDocInfo[2]); //문서를 가져올 리스트 주소
        $hdFromDocID.val(arrDocInfo[4]); //가져올 문서 아이디
        $hdToSiteUrl.val(arrFolderInfo[0]); //문서를 옮길 사이트 주소
        $hdToWebName.val(arrFolderInfo[1]); //문서를 옮길 웹 주소
        $hdToListUrl.val(arrFolderInfo[2]); //문서를 옮길 리스트 주소
        $hdToFolderName.val(arrFolderInfo[3]); //문서를 옮길 폴더명
        //문서를 폴더에 추가할 때 버튼을 클릭한다.
        $btnSave.click();
    }

    ////////////////////////////////////////////////////////////////////////////
    //아이템 삭제(휴지통)
    ////////////////////////////////////////////////////////////////////////////

    function itemDelete($item, $fol) {
        var strItemId = $item.attr('id');
        //////////////////////////////////////히든필드에 값을 셋팅한다.
        $hdEventType.val("4"); //문서를 가져올 사이트 주소
        $hdFromSiteUrl.val(""); //문서를 가져올 사이트 주소
        $hdFromWebName.val(""); //문서를 가져올 웹 주소
        $hdFromListUrl.val(""); //문서를 가져올 리스트 주소
        $hdFromDocID.val(strItemId); //가져올 문서 아이디
        $hdToSiteUrl.val(""); //문서를 옮길 사이트 주소
        $hdToWebName.val(""); //문서를 옮길 웹 주소
        $hdToListUrl.val(""); //문서를 옮길 리스트 주소
        $hdToFolderName.val(""); //문서를 옮길 폴더명
        //문서를 폴더에 추가할 때 버튼을 클릭한다.
        $btnDelete.click();
    }

    // image recycle function
    //var trash_icon = "<a href='link/to/trash/script/when/we/have/js/off' title='Delete this image' class='ui-icon ui-icon-trash'>-</a>";
    var trash_icon = "";

    function recycleDoc($item) {
        $item.fadeOut(function () {
            $item
			    .find("a.ui-icon-refresh")
				    .remove()
			    .end()
			    .css("width", "96px")
			    .append(trash_icon)
			    .find("img")
				    .css("height", "72px")
			    .end()
			    .appendTo($docs)
			    .fadeIn();
        });

        //////////////////////////////////////히든필드에 값을 셋팅한다.
        $hdFromSiteUrl.val(''); //문서를 가져올 사이트 주소
        $hdFromWebName.val(''); //문서를 가져올 웹 이름
        $hdFromListUrl.val(''); //문서를 가져올 리스트 주소
        $hdFromDocID.val(''); //가져올 문서 아이디
        $hdToSiteUrl.val(''); //문서를 옮길 사이트 주소
        $hdToWebName.val(''); //문서를 옮길 웹 이름
        $hdToListUrl.val(''); //문서를 옮길 리스트 주소
        $hdToFolderName.val(''); //문서를 옮길 폴더명        

        //문서를 폴더에 추가할 때 버튼을 클릭한다.
        //$btnSave.click();
    }

    ////////////////////////////////////////////////////////////////////////////
    //View Type 버튼 관련
    ////////////////////////////////////////////////////////////////////////////

    $liViewIcon.button();
    $liViewIcon.click(function () {
        $btnViewIcon.click();
    });

    $liViewDetail.button();
    $liViewDetail.click(function () {
        $btnViewDetail.click();
    });

    ////////////////////////////////////////////////////////////////////////////
    //폴더를 더블 클릭했을 경우 이동 이벤트
    ////////////////////////////////////////////////////////////////////////////

    $folder.bind('dblclick', function () {
        var strFolderUrl = $(this).children("div.dvItemBg").children("div.colUrl").html();
        var arrFolderDepth = $(this).children("div.dvItemBg").children("div.dvDepth").html();

        $(".hdfolderLocation").val(strFolderUrl);
        $(".hdfolderDepth").val(arrFolderDepth);

        $(".btnLocation").click();
    });

    ////////////////////////////////////////////////////////////////////////////
    //아이템 원클릭 이벤트
    ////////////////////////////////////////////////////////////////////////////

    $folder.bind('click', function () {
        $(this).addClass('itemSelected');
        //var strFolderUrl = $(this).children("div.dvItemBg").children("div.colUrl").html();
        //var arrFolderDepth = $(this).children("div.dvItemBg").children("div.dvDepth").html();
        //$(".hdfolderLocation").val(strFolderUrl);
        //$(".hdfolderDepth").val(arrFolderDepth);
        //$(".btnLocation").click();
    });

    $doc.bind('click', function () {
        //$(this).addClass('itemSelected');
    });

    ////////////////////////////////////////////////////////////////////////////
    //네비게이션(상위로 이동) 버튼 관련
    ////////////////////////////////////////////////////////////////////////////

    $liNavBtn.button();
    $liNavBtn.click(function () {

        var varCrrIndex = $("li.nav_li").last().index();
        var varDestIndex = varCrrIndex - 1;

        $DestFolder = $('li.nav_li:eq(' + varDestIndex + ')');

        var vDestUrl = $DestFolder.children("div.nav_li_url").html();
        var vDestDepth = $DestFolder.children("div.nav_li_depth").html();

        $(".hdfolderLocation").val(vDestUrl);
        $(".hdfolderDepth").val(vDestDepth);

        $(".btnLocation").click();
    });
});

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//드롭다운 메뉴 (네비게이션)
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

var timeout = 500;
var closetimer = 0;
var ddmenuitem = 0;

function jsddm_open() {
    //alert('open');
    jsddm_canceltimer();
    jsddm_close();
    ddmenuitem = $(this).find('ul').eq(0).css('visibility', 'visible');
}

function jsddm_close()
{ if (ddmenuitem) ddmenuitem.css('visibility', 'hidden'); }

function jsddm_timer()
{ closetimer = window.setTimeout(jsddm_close, timeout); }

function jsddm_canceltimer() {
    if (closetimer) {
        window.clearTimeout(closetimer);
        closetimer = null;
    }
}

$(document).ready(function () {
    $('.jsddm > li').bind('mouseover', jsddm_open);
    $('.jsddm > li').bind('mouseout', jsddm_timer);
});

document.onclick = jsddm_close;

// 네비게이션의 폴더 클릭 시 폴더의 주소와 뎊스를 리턴한다.
function location_change(_url, _depth) {
    $(".hdfolderLocation").val(_url);
    $(".hdfolderDepth").val(_depth);
    $(".btnLocation").click();
}